Skip to content

launch prep: FLUSHALL, MEMORY USAGE, and docs clarity - #324

Merged
kacy merged 2 commits into
mainfrom
launch-prep
Feb 27, 2026
Merged

launch prep: FLUSHALL, MEMORY USAGE, and docs clarity#324
kacy merged 2 commits into
mainfrom
launch-prep

Conversation

@kacy

@kacy kacy commented Feb 27, 2026

Copy link
Copy Markdown
Owner

summary

pre-launch polish before developer community launch.

new commands:

  • FLUSHALL [ASYNC] — alias for FLUSHDB (ember is single-database); high-visibility Redis command that users reach for immediately
  • MEMORY USAGE key [SAMPLES count] — returns estimated key memory in bytes using the existing cached value size; useful for production debugging

documentation:

  • geo commands marked as coming in a future release (not "not implemented yet")
  • lua scripting exclusion made explicit in README with a "not supported" section
  • new "notable differences from redis" section covering RENAME behavior, transaction atomicity, and the RESP3 vs gRPC port split
  • compatibility matrix updated for both new commands

what was tested

  • cargo build passes cleanly
  • FLUSHALL with and without ASYNC behaves identically to FLUSHDB
  • MEMORY USAGE returns an integer for existing keys, nil for missing keys, and accepts (ignores) the SAMPLES argument

kacy added 2 commits February 26, 2026 20:49
FLUSHALL [ASYNC] is an alias for FLUSHDB — ember is single-database,
so the behavior is identical. it's a high-visibility command that redis
users reach for immediately when setting up a fresh environment.

MEMORY USAGE key [SAMPLES count] returns the estimated memory footprint
of a key in bytes using the cached value size on each entry (O(1), no
collection walk). the SAMPLES option is accepted and silently ignored
since ember's estimate is always based on the cached size. returns nil
if the key does not exist or is expired.
…ed section

- FLUSHALL and MEMORY USAGE rows updated in compatibility matrix
- geo commands changed from "not implemented yet" to "coming in a future release"
- lua scripting exclusion made explicit (not just anti-goal; not planned)
- new "not supported" section in README listing excluded features with rationale
- new "notable differences from redis" section covering shard rename semantics,
  transaction atomicity, and the RESP3 vs gRPC port split
@kacy
kacy merged commit 1bd2d17 into main Feb 27, 2026
4 of 7 checks passed
@kacy
kacy deleted the launch-prep branch February 27, 2026 01:49
kacy added a commit that referenced this pull request Feb 27, 2026
bitop dispatched all work to dest's shard, so source keys on other
shards were read as empty buffers — producing wrong results. fix reads
each source from its own shard via route_multi, computes the bitwise
result in the connection layer, then writes to dest's shard.

also fixes cli command sort order: FLUSHALL was added after FLUSHDB
(pr #324) and MEMORY USAGE was placed before INFO, both violating the
alphabetical invariant checked by commands_sorted_within_groups.
kacy added a commit that referenced this pull request Feb 27, 2026
bitop dispatched all work to dest's shard, so source keys on other
shards were read as empty buffers — producing wrong results. fix reads
each source from its own shard via route_multi, computes the bitwise
result in the connection layer, then writes to dest's shard.

also fixes cli command sort order: FLUSHALL was added after FLUSHDB
(pr #324) and MEMORY USAGE was placed before INFO, both violating the
alphabetical invariant checked by commands_sorted_within_groups.
kacy added a commit that referenced this pull request Feb 27, 2026
* fix: bitop cross-shard read; fix cli command sort order

bitop dispatched all work to dest's shard, so source keys on other
shards were read as empty buffers — producing wrong results. fix reads
each source from its own shard via route_multi, computes the bitwise
result in the connection layer, then writes to dest's shard.

also fixes cli command sort order: FLUSHALL was added after FLUSHDB
(pr #324) and MEMORY USAGE was placed before INFO, both violating the
alphabetical invariant checked by commands_sorted_within_groups.

* docs: update test count to 1,690+
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant